package dq.study.designmodel.adapter;

import dq.study.designmodel.adapter.impl.combine.CombinedAdapter;
import dq.study.designmodel.adapter.impl.extend.ExtendAdapter;

/**
 * 什么是适配器，eg 一个变压器可以将220v的电压变成10v的电压
 * 在程序方面，如下面代码：
 * 它将source类扩展成了target的一个实现，并且仍具备的source的一些特性
 *
 * @author dongqun
 * @Description:
 * @date 2019/4/20 12:19
 */
public class Client {
    public static void main(String[] args) {
        // 实现1 继承方式
        Target target = new ExtendAdapter();
        target.method1();
        target.method2();

        // 实现2 聚合方式
        Source source = new Source();
        Target target1 = new CombinedAdapter(source);
        target1.method1();
        target1.method2();
    }
}
